1. Field of the Invention
The present invention relates to a method of communication procedure between a user station and a data transmission network, using an Internet-type protocol.
The inventive procedure pertains in particular to a user station equipped with a xe2x80x9csmartxe2x80x9d card reader and connected to the aforementioned network.
This invention also relates to the system architecture for implementation of the method.
2. Definitions
Within the scope of this invention, the common meaning of the term xe2x80x9cuser stationxe2x80x9d is upheld. The aforementioned station may, in particular, consist of a personal computer using various operating systems such as for example, the WINDOWS or UNIX type (both copyrighted). It may also consist of a dedicated worksation, a portable computer or a card terminal.
Similarly, within the scope of this invention, the term xe2x80x9cInternetxe2x80x9d encompasses, in addition to the Internet itself, all private business networks or other networks, termed xe2x80x9cintra-netsxe2x80x9d, as well as network extensions, termed xe2x80x9cextra-netsxe2x80x9d.
In the following, without limitation to any kind of applications, the scope will refer to a preferred application of the invention, except when otherwise specified. Thus, a user station, termed simply xe2x80x9cTerminalxe2x80x9d is equipped with a smart card reader and connected to an Internet-type network, is considered.
An application system, based on a smart card, in general consists of the following main components:
a smart card;
a host system consisting of the aforementioned Terminal;
a communication network, and specifically the Internet, for the preferred application;
an application server connected to the network.
FIG. 1 illustrates an example of this type of system architecture. Terminal (1), for example, a personal computer, comprises a smart card (2) reader (3). The reader (3) may or may not be physically integrated to terminal (1). The smart card (2) comprises an integrated circuit (20), the input-output connections of which show through the surface of the case to allow for electrical power supply and communication with the terminal (1). The latter comprises access circuits to a data transmission network (RI). These circuits depend, in particular, on the specificity of network (RI) and terminal (1). On an exemplification basis, it could consist of a network card for local area type networks, or a modem for connection to a dial-up telephone line, or an integrated services digital network (ISDN), for connection to the Internet, for example, via an Internet Service Provider (ISP).
Terminal (1) obviously comprises all the circuits and components required for proper operation, which are omitted for purposes of simplification in the figure. These circuits and components include central unit, read-write and fixed storage memory, magnetic disc memory, disc and/or CD ROM driver, etc.
Additionally, it is also customary for Terminal (1) to be linked to traditional peripherals, integrated or not, such as a monitor (5) and a keyboard (6).
Communication may be established between Terminal (1) and servers connected to the network (RI), one of which (4) is illustrated in FIG. 1. For the case of the preferred application of this invention, access circuits (11) establish communication between terminal (1) and the servers (4) using a particular software (11), termed navigator or xe2x80x9cbrowserxe2x80x9d. The latter allows for access to different applications distributed across network (RI) and, in general, according to a xe2x80x9cclient-serverxe2x80x9d mode.
Usually, network communication occurs according to protocols consistent with specific standards and comprising several superimposed layers of software. For the case of network (RI) of the internet type, communication occurs according to specific protocols compatible with this type of communication, which will be subsequently described in detail, although they also consist of several software layers. A communication protocol is selected depending on the specific application that is targeted: for example querying of xe2x80x9cWEBxe2x80x9d pages, file transfer, electronic mail (e-mail), forums, xe2x80x9cnewsxe2x80x9d etc.
In an application system that is smart card based, as illustrated by the architecture of FIG. 1, the smart card may be ascribed several functions. In particular, it is used for security purposes: confidentiality and/or authentication of the terminal (1) user.
However, it should be noted that card (3) cannot communicate with commercially available navigators unless the latter""s code is modified. Current smart cards, which are otherwise consistent with specific standards, contain both software and physical configurations, which also do not allow for direct communication with the Internet. In particular, they cannot receive or transmit data bundles, according to protocols used by this kind of network. Thus, there are provisions for inclusion of an additional piece of software installed in terminal (1), in general, referred to as a xe2x80x9cplug-inxe2x80x9d, according to Anglo-Saxon terminology. This piece of software, referred to in FIG. 1 as (12), functions as an interface between navigator (10) and card (2) and, in particular, the electronic circuits (20) of card (1) therein.
Card (2) supplies data for navigator (10), in particular security data: for example, data that allows identification or authentication, or even data access authorization for any one of the remote servers (4), and/or applications located on the servers.
This procedure affords a greater level of security than usage alone of security software layers, and supplied recently by some navigators. Smart card (2) remains the property of the user and under the user""s control. In particular, all security data stays in the smart card (2) memory and is only transmitted to the terminal (1) in numerical format. However, this security chain does present a weak xe2x80x9clinkxe2x80x9d. That is, navigator (10) is in communication with the outside world. Thus, in reality, communication is indirect, as it occurs, in particular, via access circuits (11) and via different software layers, which will be described subsequently in greater detail. However, the terminal (1), which is usually used for this type of application, does not include any specific means, whether physical or software, that can afford a high level of security and isolate it from the outside world. Thus, it remains vulnerable to different attacks from network (RI): xe2x80x9cvirusesxe2x80x9d, xe2x80x9cTrojan horsesxe2x80x9d, xe2x80x9clogic bombsxe2x80x9d etc., even despite the presence of card reader (3) and smart card (2), peripheral to Terminal (1).
Finally, smart card (2) may be used for applications other than for security. It is important to note that, given the state of the art, the host system linked to the smart card reader (3), that is terminal (1), is also linked to a particular kind of application. In other words, provisions are required for dedicated task specific terminals for each particular application.
Further, there are currently numerous needs for applications based on smart cards, needs that are either imperfectly or completely unsatisfied by the present state of the art, whose main characteristics have been outlined above. Otherwise, there are also certain needs and requirements that are contradictory to these characteristics.
The following list of needs is non-exhaustive:
personal mobility: users need to be able to access communication services anywhere in the world, either using their own equipment or using equipment that is compatible with their smart cards, and thus with a degree of specified communication security;
standard environment: wherever users are, they need to be able to find access to their own work environment, with the benefit of communication security as mentioned above, in other words, the process of changing equipment needs to be xe2x80x9ctransparentxe2x80x9d for users;
terminal mobility: the terminal itself needs to be portable and connectable to any segment of the network, with users benefiting from all possibilities (authorized access, etc.) regularly available at their own sites;
multifunctionality and standardization: Terminals in use should be capable of accepting multi-functional smart cards, which implies that they are no longer required to be dedicated or that they at least require downloading or installing of additional software (xe2x80x9cplug-insxe2x80x9d etc.) specific to each application.
This invention is designed to compensate for disadvantages identified in the state of the art, several of which have been mentioned, while supplying a high level of communication security and responding to needs and requirements that are currently sensed in this domain.
According to one essential characteristic of this invention, all or part of the bi-directional flow of data between terminal and network is generated by the smart card, in order to isolate the terminal from the outside world. For this purpose, at least part of the aforementioned software layers for protocols are installed in the smart card. Additionally, provisions exist for installation of a specific layer of communication software in the smart card, with its counterpart in the terminal. The term xe2x80x9cspecificxe2x80x9d is to be understood as specific to the invention procedure. Thus, these specific communication layers, become all-purpose, regardless of the considered application. They only intervene during the exchange process of bi-directional data between the terminal and the smart card, on the one hand, and between the smart card and the network, on the other.
Specific communication software layers consist, in particular, of software agents, termed xe2x80x9cintelligent agentsxe2x80x9d, allowing in particular for protocol conversion. There are agents coupled to specific communication layers, respectively linked to the terminal and the smart card. According to the inventive method, sessions are opened between coupled agents.
Consequently and, in particular, all communication security functions are processed solely from the within the smart card, rather than from within the terminal. The smart card no longer transmits keys or other stored and secret data to the terminal in any form whatsoever, even numerical, according to the state of the art (FIG. 1).
However, according to another feature of this invention, the smart card can authorize direct links between the terminal and, in particular, the navigator, for Internet-type transmissions and the network, for example, for data that requires security processing (graphic or image data of xe2x80x9cWEBxe2x80x9d pages etc.).
According to another characteristic of this invention, the smart card supplies the host system, that is, the terminal, with a virtual terminal, for example, as a page in xe2x80x9cHTMLxe2x80x9d (HyperText Markup Language) or, in general, in hypertext format, or even as a software item termed xe2x80x9cappletxe2x80x9d in JAVA (Copyrighted) language, which allows the user to select a particular application among those available and offered by the smart card. Thus, the terminal becomes all-purpose as it supports numerous applications. The host system is seen as peripheral to the smart card, supplying physical resources such as a monitor for visualization, a keyboard, etc.
This invention thus relates to a method of communication between a terminal, equipped with a smart card reader and a data transmission network, said terminal containing an initial protocol access stack to the network, which consists of a specific number of communication software layers, and said smart card reader, said smart card comprising second and third protocol stacks, each consisting of at least communication software layers, termed lower, in order to allow data exchange between the smart card and said terminal, wherein it comprises an initial and preliminary phase for installing, on the smart card, a specific software item, which functions as an interface between said lower layers of the third protocol stack and at least one registered application of the smart card, wherein it comprises a second preliminary phase for installing a specific software item, which functions as an interface between said lower layers of the second protocol stack and specific layers of said initial protocol stack, wherein said first and second specific software items additionally consist of at least one pair of initially coupled software entities, each of said entities cooperating with the other in order to allow for a bi-directional data exchange session to be opened between said terminal and said smart card and/or the network, so that all or part of said data travels through said smart card.
This invention also relates to a method of communication between a terminal equipped with smart card reader and a data transmission network, said terminal comprising an initial protocol access stack to the network, which consists of a specific number of communication software layers, and said smart card reader, said smart card consisting of the second and third access protocol stacks, each consisting of at least software communication layers, termed lower, in order to allow data exchange between the smart card and said terminal, wherein it consists of an initial preliminary phase to install, on the smart card, an initial specific software item, which functions as an interface between said lower layers of the third protocol stack and at least one registered application of the smart card, wherein it consists of a second preliminary phase to install on the terminal a second specific software item, which functions as an interface between said lower layers and the second protocol stack and with specific layers of said first protocol stack, wherein said first and second specific software items additionally consist of at least one pair of initially coupled software entities, each of which entities cooperating with the other in order to allow for a session of bi-directional data exchange to be opened between said terminal and said smart card, so that said smart card supplies said terminal with a model terminal, termed virtual, that transforms the smart card into a server and/or client.
This invention additionally relates to system architecture for the implementation of the procedure.
It is easy to observe that this invention clearly offers numerous advantages. It offers, in particular, high level of security for communication between terminal and network. It creates an all-purpose terminal, which allows it to support numerous applications without having to modify either physical components of the terminal or any of the applications running inside the terminal. All that is required is to install a specific communication software layer, which may be performed once permanently or via uploading, as many times as required from different sources: diskettes, CD-ROMs, downloading etc. It remains completely compatible with existing equipment and its implementation. As an example, when a user does not want to benefit from the possibilities and advantages of this invention, or if she/he does not own a smart card consistent with this invention, it is still possible to use the terminal and associated navigator, as well as a traditional smart card, in a conventional manner, that is, as described in reference to the system in FIG. 1.